/*
** Copyright (c) 2010 by Lorimark Solutions, LLC.
** All Rights Reserved.
** Send inquiries to: info@lorimarksolutions.com
**
*/

#ifndef LCD_H_9406da0c_eb62_4848_bf52_f22afce77a64
#define LCD_H_9406da0c_eb62_4848_bf52_f22afce77a64

#include <evie-systems.h>

void chipSelect_lcd( uint8 chip );
uint8 readByte_lcd(void);
uint8 readStatus_lcd(void);
void wait_lcd( uint8 dataInstruction );
void writeByte_lcd( uint8 data );
void segmentSelect_lcd( uint16 segmentNumber );
void address_lcd( uint16 segmentNumber );
uint8 readSegment_lcd( uint16 segmentNumber );
void writeSegment_lcd( uint16 segmentNumber, uint8 dataByte );
void fillScreen_lcd( uint8 fillByte );
void writeCharacter_lcd( uint8 character );
void writeHexNumber_lcd( uint16 startingSegment, uint16 number );
void writeDecNumber_lcd( uint16 startingSegment, uint16 number, uint16 divisor );
void writeDecNumberVert_lcd( uint16 startingSegment, uint16 number, uint16 divisor );
void writeBigDecNumber_lcd( uint16 startingSegment, uint16 number, uint16 divisor, uint8 decimal );
void writeBigCharacter_lcd( uint8 character );
void writeHugeDecNumber_lcd( uint16 startingSegment, sint16 number, uint16 divisor, uint8 decimal );
void writeHugeCharacter_lcd( uint8 character );
void add_lcd_x( unsigned char x, unsigned char y );
void set_lcd_x( unsigned char x, unsigned char y );
void init_lcd( uint8 on );
void pixel_lcd( uint8 x, uint8 y, uint8 color );
void text35_lcd( uint8 x, uint8 y, uint8 c, uint8 color );
void putc_lcd( uint8 c );
void puts_lcd( char * s );
void putp_lcd( const char s[] );

#endif // #ifndef LCD_H_9406da0c_eb62_4848_bf52_f22afce77a64
